Priority Inheritance on Condition Variables

نویسنده

  • Tommaso Cucinotta
چکیده

In this paper, a mechanism is presented to deal with priority inversion in real-time systems when multiple threads of execution synchronize with each other by means of mutual exclusion semaphores coupled with the programming abstraction of condition variables. Traditional priority inheritance solutions focus on addressing priority or deadline inversion as due to the attempt to lock mutual exclusion semaphores, or deal exclusively with specific interaction patterns such as client-server ones. The mechanism proposed in this paper allows the programmer to explicitly declare to the run-time environment what tasks are able to perform a notify operation on a condition over which other tasks may be suspended through a wait operation. This enables developers of custom interaction models for real-time tasks to exploit their knowledge of the application-specific interaction so as to potentially reduce priority inversion. The paper discusses issues in the realization of the technique, and its integration with existing priority inheritance mechanisms on current operating systems. Also, the paper briefly presents the prototyping of the technique within the open-source RTSim real-time systems simulator, which is used to highlight the potential advantages of the exposed technique through a simple simulated scenario.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

The Case for Migratory Priority Inheritance in Linux: Bounded Priority Inversions on Multiprocessors

Linux’s real-time performance crucially depends on priority inheritance because—on uniprocessors—it limits the maximum duration of priority inversion to one critical section per lock while ensuring that tasks remain fully preemptable even when holding locks. Unfortunately, priority inheritance is ineffective on multiprocessors under non-global scheduling (i.e., if some tasks may not execute on ...

متن کامل

Experimental Implementations of Priority Inheritance Semaphore on ITRON-speci cation Kernel

Using priority inheritance protocols is an e ective approach to solve the problem of uncontrolled priority inversion, which is among the major sources of deadline violations in hard real-time systems. In this paper, some approaches to incorporate priority inheritance to the ITRON speci cation are discussed. As the result, we propose two speci cations of priority inheritance semaphore functions ...

متن کامل

On Using Priority Inheritance In Real-Time Databases

Due to resource sharing among tasks, priority inversion can occur during prioritydriven preemptive scheduling. In this work, we investigate solutions to the priority inversion problem in a real-time database environment where two-phase locking is employed for concurrency control. We examine two basic schemes for addressing the priority inversion problem, one based on priority inheritance and th...

متن کامل

Priority Inheritance Spin Locks for Multiprocessor Real-Time Systems

When a real-time system is realized on a shared-memory multiprocessor, priority-ordered spin locks are often required to reduce priority inversions. However, simple priority-ordered spin locks can cause uncontrolled priority inversions when they are used for nested spin locks. This paper points out the problem of uncontrolled priority inversions in the context of spin locks and proposes priorit...

متن کامل

A Prioritized Multiprocessor Spin Lock

In this paper, we present the PR-lock, a prioritized spin-lock mutual exclusion algorithm for real time systems. The PR-lock is a contention-free spin lock, in which blocked processes spin on locally stored or cached variables. In contrast to previous work on prioritized spin locks, our algorithm maintains a pointer to the lock holder. As a result, our spin lock can support priority inheritance...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013